home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Mail / pine3.92 / pico / edef.h < prev    next >
C/C++ Source or Header  |  1996-03-14  |  7KB  |  158 lines

  1. /*
  2.  * $Id: edef.h,v 4.21 1996/03/15 07:41:11 hubert Exp $
  3.  *
  4.  * Program:    Global definitions and initializations
  5.  *
  6.  *
  7.  * Michael Seibel
  8.  * Networks and Distributed Computing
  9.  * Computing and Communications
  10.  * University of Washington
  11.  * Administration Builiding, AG-44
  12.  * Seattle, Washington, 98195, USA
  13.  * Internet: mikes@cac.washington.edu
  14.  *
  15.  * Please address all bugs and comments to "pine-bugs@cac.washington.edu"
  16.  *
  17.  *
  18.  * Pine and Pico are registered trademarks of the University of Washington.
  19.  * No commercial use of these trademarks may be made without prior written
  20.  * permission of the University of Washington.
  21.  * 
  22.  * Pine, Pico, and Pilot software and its included text are Copyright
  23.  * 1989-1996 by the University of Washington.
  24.  * 
  25.  * The full text of our legal notices is contained in the file called
  26.  * CPYRIGHT, included with this distribution.
  27.  *
  28.  */
  29. /*    EDEF:        Global variable definitions for
  30.             MicroEMACS 3.2
  31.  
  32.             written by Dave G. Conroy
  33.             modified by Steve Wilhite, George Jones
  34.             greatly modified by Daniel Lawrence
  35. */
  36.  
  37. #ifndef    EDEF_H
  38. #define    EDEF_H
  39.  
  40. #ifdef    maindef
  41.  
  42. /* for MAIN.C */
  43.  
  44. /* initialized global definitions */
  45.  
  46. int     fillcol = 72;                   /* Current fill column          */
  47. int     userfillcol = -1;               /* Fillcol set from cmd line    */
  48. char    pat[NPAT];                      /* Search pattern        */
  49. int    eolexist = TRUE;        /* does clear to EOL exist    */
  50. int    optimize = FALSE;        /* optimize flag(cf line speed)    */
  51. int    scrollexist = TRUE;        /* does insert line exist    */
  52. int    inschar = TRUE;            /* does insert character exist    */
  53. int    delchar = TRUE;            /* does delete character exist    */
  54. int     sgarbk = TRUE;                  /* TRUE if keyhelp garbaged     */
  55. int     sup_keyhelp = FALSE;            /* TRUE if keyhelp is suppressed*/
  56. int     mline_open = FALSE;             /* TRUE if message line is open */
  57. int    ComposerTopLine = 2;        /* TRUE if message line is open */
  58. int    ComposerEditing = FALSE;    /* TRUE if message line is open */
  59. int    revexist = FALSE;        /* does reverse video exist?    */
  60. char    modecode[] = "WCSEVO";        /* letters to represent modes    */
  61. long    gmode = MDWRAP;            /* global editor mode        */
  62. int     sgarbf  = TRUE;                 /* TRUE if screen is garbage    */
  63. int     mpresf  = FALSE;                /* TRUE if message in last line */
  64. int    clexec    = FALSE;        /* command line execution flag    */
  65. char   *alt_speller = NULL;        /* alt spell checking command   */
  66.  
  67. /* uninitialized global definitions */
  68. int     currow;                 /* Cursor row                   */
  69. int     curcol;                 /* Cursor column                */
  70. int     thisflag;               /* Flags, this command          */
  71. int     lastflag;               /* Flags, last command          */
  72. int     curgoal;                /* Goal for C-P, C-N            */
  73. char    opertree[NLINE+1];    /* operate within this tree     */
  74. WINDOW  *curwp;                 /* Current window               */
  75. BUFFER  *curbp;                 /* Current buffer               */
  76. WINDOW  *wheadp;                /* Head of list of windows      */
  77. BUFFER  *bheadp;                /* Head of list of buffers      */
  78. BUFFER  *blistp;                /* Buffer for C-X C-B           */
  79.  
  80. BUFFER  *bfind();               /* Lookup a buffer by name      */
  81. WINDOW  *wpopup();              /* Pop up window creation       */
  82. LINE    *lalloc();              /* Allocate a line              */
  83. int     km_popped;        /* menu popped up               */
  84. #if    defined(TERMCAP) || defined(TERMINFO) || defined(VMS)
  85. KBESC_T *pico_kbesc;        /* keyboard esc sequence trie   */
  86. #endif /* TERMCAP/TERMINFO/VMS */
  87.  
  88. #else  /* maindef */
  89.  
  90. /* for all the other .C files */
  91.  
  92. /* initialized global external declarations */
  93.  
  94. extern  int     fillcol;                /* Fill column                  */
  95. extern  int     userfillcol;            /* Fillcol set from cmd line    */
  96. extern  char    pat[];                  /* Search pattern               */
  97. extern    int    eolexist;        /* does clear to EOL exist?    */
  98. extern    int    optimize;        /* optimize flag(cf line speed)    */
  99. extern    int    scrollexist;        /* does insert line exist    */
  100. extern    int    inschar;        /* does insert character exist    */
  101. extern    int    delchar;        /* does delete character exist    */
  102. extern  int     sgarbk;
  103. extern  int     sup_keyhelp;
  104. extern  int     mline_open;             /* Message line is open         */
  105. extern    int    ComposerTopLine;    /* TRUE if message line is open */
  106. extern    int    ComposerEditing;    /* TRUE if message line is open */
  107. extern    int    timeout;        /* how long we wait in GetKey    */
  108. extern    int    revexist;        /* does reverse video exist?    */
  109. extern    char    modecode[];        /* letters to represent modes    */
  110. extern    KEYTAB    keytab[];        /* key bind to functions table    */
  111. extern    KEYTAB    pkeytab[];        /* pico's function table    */
  112. extern    long    gmode;            /* global editor mode        */
  113. extern  int     sgarbf;                 /* State of screen unknown      */
  114. extern  int     mpresf;                 /* Stuff in message line        */
  115. extern    int    clexec;            /* command line execution flag    */
  116. extern    char   *alt_speller;        /* alt spell checking command   */
  117. /* initialized global external declarations */
  118. extern  int     currow;                 /* Cursor row                   */
  119. extern  int     curcol;                 /* Cursor column                */
  120. extern  int     thisflag;               /* Flags, this command          */
  121. extern  int     lastflag;               /* Flags, last command          */
  122. extern  int     curgoal;                /* Goal for C-P, C-N            */
  123. extern  char    opertree[];        /* operate within this tree     */
  124. extern  WINDOW  *curwp;                 /* Current window               */
  125. extern  BUFFER  *curbp;                 /* Current buffer               */
  126. extern  WINDOW  *wheadp;                /* Head of list of windows      */
  127. extern  BUFFER  *bheadp;                /* Head of list of buffers      */
  128. extern  BUFFER  *blistp;                /* Buffer for C-X C-B           */
  129.  
  130. extern  BUFFER  *bfind();               /* Lookup a buffer by name      */
  131. extern  WINDOW  *wpopup();              /* Pop up window creation       */
  132. extern  LINE    *lalloc();              /* Allocate a line              */
  133. extern  int     km_popped;        /* menu popped up               */
  134. #ifdef    MOUSE
  135. extern    MENUITEM menuitems[];        /* key labels and functions */
  136. extern    MENUITEM *mfunc;        /* single generic function  */
  137. extern    mousehandler_t mtrack;        /* func used to track the mouse */
  138. #endif    /* MOUSE */
  139.  
  140. #if    defined(TERMCAP) || defined(TERMINFO) || defined(VMS)
  141. extern    KBESC_T *pico_kbesc;        /* keyboard esc sequence trie   */
  142. #endif /* TERMCAP/TERMINFO/VMS */
  143.  
  144. #endif /* maindef */
  145.  
  146. /* terminal table defined only in TERM.C */
  147.  
  148. #ifndef    termdef
  149. #if    defined(VMS) && !defined(__ALPHA)
  150. globalref
  151. #else
  152. extern
  153. #endif /* VMS */
  154.        TERM    term;                   /* Terminal information.        */
  155. #endif /* termdef */
  156.  
  157. #endif    /* EDEF_H */
  158.